package n2_common_methods;


import lombok.extern.slf4j.Slf4j;

import static utils.Sleeper.sleep;

/**
 * ---------------------------------------------------------------------------------
 *                                                                                 /
 * 守护线程： 只要其他非守护线程结束了， 本守护线程会结束运行(-即使本守护进程未执行完-)       /
 *                                                                                 /
 * =================================================================================
 *
 * -------------------------------------------------------------------
 *    正常情况下：当主线程结束了，有其它线程还在运行的话， JAVA线程不会结束   |
 * ==================================================================
 *
 * 使用：
 *  1.  一般垃圾回收器 就是一种守护线程
 *  2.  Tomcat 中 Acceptor和Poller 线程都是守护线程，所以Tomcat接收到 shutdown命令后，不会等待它们处理完 当前请求
 */
@Slf4j(topic = "c.T9")
public class T9_守护线程daemon_thread {

    public static void main(String[] args) {

        Thread t1 = new Thread(()->{
            while(true){
                sleep(0.1);
                log.debug("t1 线程轮询---------");
            }
        }, "t1");

//>>>>>>>>>>>>>>>>>>>>>>>HEAD
        t1.setDaemon(true); // 设置守护线程
//-----------------------
//<<<<<<<<<<<<<<<<<<<<<<<

        t1.start();

        sleep(1);

        log.debug("main 线程结束, t1线程也会结束---");

    }



}
